[INFO] cloning repository https://github.com/letr007/letcode
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/letr007/letcode" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fletr007%2Fletcode", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fletr007%2Fletcode'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e3d81e6baf321d5ce8bf40daf2a0b89c9be3fef5
[INFO] checking letr007/letcode against master#f28ac764c36004fa6a6e098d15b4016a838c13c6 for pr-158320
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fletr007%2Fletcode" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/letr007/letcode
[INFO] finished tweaking git repo https://github.com/letr007/letcode
[INFO] tweaked toml for git repo https://github.com/letr007/letcode written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/letr007/letcode on toolchain f28ac764c36004fa6a6e098d15b4016a838c13c6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/letr007/letcode already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded async-openai-macros v0.3.0
[INFO] [stderr]   Downloaded async-openai v0.38.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f
[INFO] running `Command { std: "docker" "start" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling aws-lc-rs v1.17.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking rustls-pki-types v1.14.1
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking unicase v2.9.0
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking num-conv v0.2.2
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking pxfm v0.1.29
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking unicode-width v0.2.0
[INFO] [stderr]     Checking time-core v0.1.8
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking zerofrom v0.1.8
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]    Compiling aws-lc-sys v0.41.0
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking quick-xml v0.39.4
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling pulldown-cmark v0.13.4
[INFO] [stderr]     Checking winnow v0.7.15
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking fancy-regex v0.16.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking secrecy v0.10.3
[INFO] [stderr]     Checking plist v1.9.0
[INFO] [stderr]    Compiling async-openai-macros v0.3.0
[INFO] [stderr]     Checking pulldown-cmark-escape v0.11.0
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking derive_builder v0.20.2
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking syntect v5.3.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking tower-http v0.6.10
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.7.0
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking reqwest v0.13.3
[INFO] [stderr]     Checking async-openai v0.38.2
[INFO] [stderr]     Checking letcode v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `compaction_history_char_budget`, `default_preserve_recent_budget`, `describe_history_item`, `render_bounded_compaction_history`, `render_compaction_prompt`, and `select_compaction_segments`
[INFO] [stdout]   --> src/agent.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     compaction_history_char_budget, default_preserve_recent_budget, describe_history_item,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 58 |     render_bounded_compaction_history, render_compaction_prompt, select_compaction_segments,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompatibleChatCompletionStreamResponseDelta`, `CompatibleChatCompletionStreamResponse`, `append_sse_chunk`, `drain_sse_data_events`, `is_ignorable_response_lifecycle_deserialize_error`, and `send_compatible_chat_completion_stream`
[INFO] [stdout]   --> src/agent.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     CompatibleChatCompletionStreamResponse, CompatibleChatCompletionStreamResponseDelta,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 62 |     append_sse_chunk, drain_sse_data_events, is_ignorable_response_lifecycle_deserialize_error,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     send_compatible_chat_completion_stream,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::request_builder::ToolSpec`
[INFO] [stdout]   --> src/mcp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::request_builder::ToolSpec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tool_names`
[INFO] [stdout]   --> src/transcript.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::tool_names;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `async_openai::types::chat::ChatCompletionRequestAssistantMessage::function_call`
[INFO] [stdout]    --> src/request_builder.rs:879:17
[INFO] [stdout]     |
[INFO] [stdout] 879 |                 function_call: None,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `async_openai::types::chat::ChatCompletionRequestAssistantMessage::function_call`
[INFO] [stdout]    --> src/request_builder.rs:899:9
[INFO] [stdout]     |
[INFO] [stdout] 899 |         function_call: None,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `async_openai::types::chat::ChatCompletionRequestAssistantMessage::function_call`
[INFO] [stdout]    --> src/request_builder.rs:879:17
[INFO] [stdout]     |
[INFO] [stdout] 879 |                 function_call: None,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `async_openai::types::chat::ChatCompletionRequestAssistantMessage::function_call`
[INFO] [stdout]    --> src/request_builder.rs:899:9
[INFO] [stdout]     |
[INFO] [stdout] 899 |         function_call: None,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_child` is never used
[INFO] [stdout]    --> src/agent.rs:564:12
[INFO] [stdout]     |
[INFO] [stdout] 563 | impl AgentFactory {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 564 |     pub fn create_child<C: Config + Clone>(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/agent.rs:749:12
[INFO] [stdout]      |
[INFO] [stdout]  613 | impl<C: Config> Agent<C> {
[INFO] [stdout]      | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  749 |     pub fn tool_scope(&self) -> ToolScope {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  753 |     pub(crate) fn max_tool_calls_limit(&self) -> usize {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1158 |     fn next_evidence_sequence(&self) -> u64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1184 |     pub async fn compact_session_async<E, Efut>(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1212 |     async fn run_oai_comp_stream_async<F, E, A, Dfut, Efut, Afut>(
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1239 |     async fn preflight_compact_context<E, Efut>(
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1261 |     fn prune_old_tool_outputs(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check` and `check_with_directive` are never used
[INFO] [stdout]    --> src/permission.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 176 | impl PermissionPolicy {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub fn check(&self, tool: &str, args: &Value) -> PermissionDecision {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn check_with_directive(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restricted_by_directive` is never used
[INFO] [stdout]    --> src/permission.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn restricted_by_directive(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `system` is never used
[INFO] [stdout]    --> src/request_builder.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl PromptMessage {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn system(text: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `run_explorer`, `run_explorer_governed`, `run_fixer`, and `run_fixer_governed` are never used
[INFO] [stdout]    --> src/subagent.rs:265:18
[INFO] [stdout]     |
[INFO] [stdout] 236 | impl SubagentRuntime {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub async fn run_explorer<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub async fn run_explorer_governed<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub async fn run_fixer<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn run_fixer_governed<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `legacy_task_input` is never used
[INFO] [stdout]    --> src/subagent.rs:976:4
[INFO] [stdout]     |
[INFO] [stdout] 976 | fn legacy_task_input(task: String) -> NormalizedSubagentInput {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `record_subagent_result` and `record_subagent_reconciliation` are never used
[INFO] [stdout]    --> src/transcript.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl TranscriptRecorder {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn record_subagent_result(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     pub fn record_subagent_reconciliation(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restore_compacted_conversation_messages` is never used
[INFO] [stdout]    --> src/transcript.rs:737:8
[INFO] [stdout]     |
[INFO] [stdout] 737 | pub fn restore_compacted_conversation_messages(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restore_conversation_messages` is never used
[INFO] [stdout]    --> src/transcript.rs:746:8
[INFO] [stdout]     |
[INFO] [stdout] 746 | pub fn restore_conversation_messages(records: &[TranscriptRecord]) -> Vec<ConversationMessage> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mix_channel` is never used
[INFO] [stdout]    --> src/tui/components/composer.rs:653:4
[INFO] [stdout]     |
[INFO] [stdout] 653 | fn mix_channel(from: u8, to: u8, mix_percent: u8) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_tool_card_lines` is never used
[INFO] [stdout]    --> src/tui/components/tool_card.rs:182:8
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub fn render_tool_card_lines(tool: &ToolView, theme: Theme, width: usize) -> Vec<Line<'static>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `visible_transcript_lines` is never used
[INFO] [stdout]    --> src/tui/components/transcript.rs:187:4
[INFO] [stdout]     |
[INFO] [stdout] 187 | fn visible_transcript_lines(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transcript_lines` is never used
[INFO] [stdout]    --> src/tui/components/transcript.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn transcript_lines(state: &TuiState, theme: Theme, width: usize) -> Vec<Line<'static>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_compaction_separator_line` is never used
[INFO] [stdout]     --> src/tui/components/transcript.rs:1025:4
[INFO] [stdout]      |
[INFO] [stdout] 1025 | fn push_compaction_separator_line(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_terminal` is never used
[INFO] [stdout]   --> src/tui/events.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl AppEvent {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 28 |     pub fn is_terminal(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/tui/events.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl TokenUsageEvent {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 58 |     pub fn new(used_tokens: u64, context_window_tokens: u64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `queued`, `text`, and `attachments` are never used
[INFO] [stdout]    --> src/tui/events.rs:88:12
[INFO] [stdout]     |
[INFO] [stdout]  87 | impl UserMessageEvent {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  88 |     pub fn new(content: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn queued(content: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn text(&self) -> &str {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn attachments(&self) -> &[UserImageAttachment] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/tui/events.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl ToolStartedEvent {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 203 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/tui/events.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 248 | impl ToolFinishedEvent {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 249 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MouseClick` is never constructed
[INFO] [stdout]   --> src/tui/input.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum InputAction {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     MouseClick,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InputAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_at_bottom` is never used
[INFO] [stdout]   --> src/tui/measure.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn is_at_bottom(total_rows: usize, viewport_rows: u16, scroll_offset: u16) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ToolPresentationContext` is never constructed
[INFO] [stdout]   --> src/tui/presentation.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ToolPresentationContext {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `summary` are never used
[INFO] [stdout]   --> src/tui/presentation.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl ToolPresentationContext {
[INFO] [stdout]    | ---------------------------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn new(name: impl Into<String>, status: ToolPresentationStatus) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn summary(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `tool_presentation` is never used
[INFO] [stdout]   --> src/tui/presentation.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl PresentationPolicy {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] 76 |     pub fn tool_presentation(&self, context: &ToolPresentationContext) -> ToolPresentation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_quiet_success` is never used
[INFO] [stdout]    --> src/tui/presentation.rs:154:4
[INFO] [stdout]     |
[INFO] [stdout] 154 | fn is_quiet_success(context: &ToolPresentationContext) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `subagent_event_sender`, `new`, `silent_with_transcript`, and `run_internal_prompt` are never used
[INFO] [stdout]    --> src/tui/runner.rs:271:12
[INFO] [stdout]     |
[INFO] [stdout] 270 | impl<C: Config> AgentRunner<C> {
[INFO] [stdout]     | ------------------------------ associated items in this implementation
[INFO] [stdout] 271 |     pub fn subagent_event_sender(event_tx: RunnerEventSender) -> SubagentEventSender<C>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn new(event_tx: RunnerEventSender) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn silent_with_transcript(transcript: Arc<Mutex<TranscriptRecorder>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 |     pub async fn run_internal_prompt(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `with_context_window` are never used
[INFO] [stdout]    --> src/tui/runtime.rs:93:12
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl AvailableModel {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout]  93 |     pub fn new(id: impl Into<String>, label: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn with_context_window(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NoopDrawer` is never constructed
[INFO] [stdout]    --> src/tui/runtime.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub struct NoopDrawer;
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `state_mut`, `submitted_prompts`, `pending_permission_handle`, `into_state`, `pending_permission_belongs_to_parent`, and `run` are never used
[INFO] [stdout]    --> src/tui/runtime.rs:224:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | impl TuiRuntime {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn state_mut(&mut self) -> &mut TuiState {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn submitted_prompts(&self) -> &[String] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn pending_permission_handle(&self) -> Option<&RunnerPermissionRequest> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn into_state(self) -> TuiState {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 |     fn pending_permission_belongs_to_parent(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 740 |     pub fn run<D: RuntimeDrawer>(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pending`, `handle`, and `child_session_id` are never used
[INFO] [stdout]   --> src/tui/runtime/permission_lifecycle.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl PermissionLifecycleController {
[INFO] [stdout]    | ---------------------------------- methods in this implementation
[INFO] [stdout] 24 |     pub(crate) fn pending(&self) -> Option<&PendingPermission> {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub(crate) fn handle(&self) -> Option<&RunnerPermissionRequest> {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     pub(crate) fn child_session_id(&self) -> Option<&str> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `dispatched_prompt`, `is_accepted`, and `failed_after_accept` are never used
[INFO] [stdout]   --> src/tui/runtime/queued_prompt.rs:41:19
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl QueuedPromptLifecycle {
[INFO] [stdout]    | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) fn dispatched_prompt(&self) -> Option<&str> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub(crate) fn is_accepted(&self) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub(crate) fn failed_after_accept(&self) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Info` is never constructed
[INFO] [stdout]   --> src/tui/state.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub enum ToastKind {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 80 |     Info,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToastKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ticks_remaining` is never used
[INFO] [stdout]    --> src/tui/state.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl ToastState {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn ticks_remaining(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_composer_attachment`, `transcript_scroll_offset`, `transcript_is_at_bottom`, `scroll_transcript_page_up`, `scroll_transcript_page_down`, and `on_user_message` are never used
[INFO] [stdout]    --> src/tui/state.rs:605:12
[INFO] [stdout]     |
[INFO] [stdout] 439 | impl TuiState {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 605 |     pub fn remove_composer_attachment(&mut self, attachment_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 633 |     pub fn transcript_scroll_offset(&self) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 672 |     pub fn transcript_is_at_bottom(&self, total_rows: usize, viewport_rows: u16) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 686 |     pub fn scroll_transcript_page_up(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 690 |     pub fn scroll_transcript_page_down(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 983 |     fn on_user_message(&mut self, message: UserMessageEvent) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROMPT_BORDER_GLYPH` is never used
[INFO] [stdout]   --> src/tui/surface.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const PROMPT_BORDER_GLYPH: &str = "┃";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CARD_PAD_LEFT` is never used
[INFO] [stdout]   --> src/tui/surface.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const CARD_PAD_LEFT: u16 = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASSISTANT_PAD_LEFT` is never used
[INFO] [stdout]   --> src/tui/surface.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ASSISTANT_PAD_LEFT: u16 = 3;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Panel` is never constructed
[INFO] [stdout]   --> src/tui/surface.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SurfaceKind {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 30 |     Root,
[INFO] [stdout] 31 |     Panel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SurfaceKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/tui/surface.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum SurfaceEmphasis {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 38 |     Reasoning,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 39 |     Assistant,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 40 |     User,
[INFO] [stdout] 41 |     ToolPending,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 42 |     ToolSuccess,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 43 |     ToolError,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 44 |     Error,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     Activity,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SurfaceEmphasis` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `elevated_title_style` is never used
[INFO] [stdout]   --> src/tui/surface.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn elevated_title_style(theme: Theme) -> Style {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dim_style` is never used
[INFO] [stdout]   --> src/tui/surface.rs:97:8
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn dim_style(theme: Theme) -> Style {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `terminal` is never used
[INFO] [stdout]    --> src/tui/terminal.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl OwnedTerminal {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn terminal(&self) -> &TuiTerminal {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/tui/theme.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Theme {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn surface_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn border_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn title_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn dim_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn assistant_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn success_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     pub fn warning_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `blocks` is never used
[INFO] [stdout]   --> src/tui/timeline.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TimelineItem {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 28 |     pub fn blocks(&self) -> Vec<DisplayBlock> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DisplayBlock` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:167:10
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub enum DisplayBlock {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `display_text` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl MessageView {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] 201 |     pub fn display_text(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `label` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:258:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | impl ToolExecutionStatus {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] 258 |     pub fn label(self) -> &'static str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `label` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | impl PermissionPromptStatus {
[INFO] [stdout]     | --------------------------- method in this implementation
[INFO] [stdout] 304 |     pub fn label(self) -> &'static str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `active_tool` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:859:12
[INFO] [stdout]     |
[INFO] [stdout] 351 | impl Timeline {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 859 |     pub fn active_tool(&self) -> Option<&ToolView> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `next_evidence_sequence` is never used
[INFO] [stdout]     --> src/agent.rs:1158:8
[INFO] [stdout]      |
[INFO] [stdout]  613 | impl<C: Config> Agent<C> {
[INFO] [stdout]      | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1158 |     fn next_evidence_sequence(&self) -> u64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `run_explorer`, `run_explorer_governed`, `run_fixer`, and `run_fixer_governed` are never used
[INFO] [stdout]    --> src/subagent.rs:265:18
[INFO] [stdout]     |
[INFO] [stdout] 236 | impl SubagentRuntime {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub async fn run_explorer<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub async fn run_explorer_governed<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub async fn run_fixer<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn run_fixer_governed<C: Config + Clone + Send + Sync + 'static>(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `legacy_task_input` is never used
[INFO] [stdout]    --> src/subagent.rs:976:4
[INFO] [stdout]     |
[INFO] [stdout] 976 | fn legacy_task_input(task: String) -> NormalizedSubagentInput {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mix_channel` is never used
[INFO] [stdout]    --> src/tui/components/composer.rs:653:4
[INFO] [stdout]     |
[INFO] [stdout] 653 | fn mix_channel(from: u8, to: u8, mix_percent: u8) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_compaction_separator_line` is never used
[INFO] [stdout]     --> src/tui/components/transcript.rs:1025:4
[INFO] [stdout]      |
[INFO] [stdout] 1025 | fn push_compaction_separator_line(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_terminal` is never used
[INFO] [stdout]   --> src/tui/events.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl AppEvent {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 28 |     pub fn is_terminal(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `text` and `attachments` are never used
[INFO] [stdout]    --> src/tui/events.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout]  87 | impl UserMessageEvent {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn text(&self) -> &str {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn attachments(&self) -> &[UserImageAttachment] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `subagent_event_sender` and `silent_with_transcript` are never used
[INFO] [stdout]    --> src/tui/runner.rs:271:12
[INFO] [stdout]     |
[INFO] [stdout] 270 | impl<C: Config> AgentRunner<C> {
[INFO] [stdout]     | ------------------------------ associated functions in this implementation
[INFO] [stdout] 271 |     pub fn subagent_event_sender(event_tx: RunnerEventSender) -> SubagentEventSender<C>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn silent_with_transcript(transcript: Arc<Mutex<TranscriptRecorder>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NoopDrawer` is never constructed
[INFO] [stdout]    --> src/tui/runtime.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub struct NoopDrawer;
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `into_state`, `pending_permission_belongs_to_parent`, and `run` are never used
[INFO] [stdout]    --> src/tui/runtime.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | impl TuiRuntime {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn into_state(self) -> TuiState {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 |     fn pending_permission_belongs_to_parent(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 740 |     pub fn run<D: RuntimeDrawer>(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pending` is never used
[INFO] [stdout]   --> src/tui/runtime/permission_lifecycle.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl PermissionLifecycleController {
[INFO] [stdout]    | ---------------------------------- method in this implementation
[INFO] [stdout] 24 |     pub(crate) fn pending(&self) -> Option<&PendingPermission> {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Info` is never constructed
[INFO] [stdout]   --> src/tui/state.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub enum ToastKind {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 80 |     Info,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToastKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_composer_attachment`, `scroll_transcript_page_up`, `scroll_transcript_page_down`, and `on_user_message` are never used
[INFO] [stdout]    --> src/tui/state.rs:605:12
[INFO] [stdout]     |
[INFO] [stdout] 439 | impl TuiState {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 605 |     pub fn remove_composer_attachment(&mut self, attachment_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 686 |     pub fn scroll_transcript_page_up(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 690 |     pub fn scroll_transcript_page_down(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 983 |     fn on_user_message(&mut self, message: UserMessageEvent) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROMPT_BORDER_GLYPH` is never used
[INFO] [stdout]   --> src/tui/surface.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const PROMPT_BORDER_GLYPH: &str = "┃";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CARD_PAD_LEFT` is never used
[INFO] [stdout]   --> src/tui/surface.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const CARD_PAD_LEFT: u16 = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASSISTANT_PAD_LEFT` is never used
[INFO] [stdout]   --> src/tui/surface.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ASSISTANT_PAD_LEFT: u16 = 3;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Panel` is never constructed
[INFO] [stdout]   --> src/tui/surface.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SurfaceKind {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 30 |     Root,
[INFO] [stdout] 31 |     Panel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SurfaceKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/tui/surface.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum SurfaceEmphasis {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 38 |     Reasoning,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 39 |     Assistant,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 40 |     User,
[INFO] [stdout] 41 |     ToolPending,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 42 |     ToolSuccess,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 43 |     ToolError,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 44 |     Error,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     Activity,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SurfaceEmphasis` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `elevated_title_style` is never used
[INFO] [stdout]   --> src/tui/surface.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn elevated_title_style(theme: Theme) -> Style {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dim_style` is never used
[INFO] [stdout]   --> src/tui/surface.rs:97:8
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn dim_style(theme: Theme) -> Style {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `terminal` is never used
[INFO] [stdout]    --> src/tui/terminal.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl OwnedTerminal {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn terminal(&self) -> &TuiTerminal {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/tui/theme.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Theme {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn surface_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn border_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn title_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn dim_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn assistant_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn success_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     pub fn warning_style(self) -> Style {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `blocks` is never used
[INFO] [stdout]   --> src/tui/timeline.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TimelineItem {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 28 |     pub fn blocks(&self) -> Vec<DisplayBlock> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DisplayBlock` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:167:10
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub enum DisplayBlock {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `display_text` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl MessageView {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] 201 |     pub fn display_text(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `label` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:258:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | impl ToolExecutionStatus {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] 258 |     pub fn label(self) -> &'static str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `label` is never used
[INFO] [stdout]    --> src/tui/timeline.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | impl PermissionPromptStatus {
[INFO] [stdout]     | --------------------------- method in this implementation
[INFO] [stdout] 304 |     pub fn label(self) -> &'static str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 33s
[INFO] running `Command { std: "docker" "inspect" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f", kill_on_drop: false }`
[INFO] [stdout] 1584cdc80e8159c170b99663321bc0730c6e3b234e48ebc98ee17a828d9f9c5f
